var e = require;
var t = module;
var o = exports;
var n,
    i = o,
    a =
        ((n = function (e, t) {
            return (n =
                Object.setPrototypeOf ||
                ({__proto__: []} instanceof Array &&
                    function (e, t) {
                        e.__proto__ = t;
                    }) ||
                function (e, t) {
                    for (var o in t) t.hasOwnProperty(o) && (e[o] = t[o]);
                })(e, t);
        }),
        function (e, t) {
            function o() {
                this.constructor = e;
            }
            n(e, t), (e.prototype = null === t ? Object.create(t) : ((o.prototype = t.prototype), new o()));
        });
Object.defineProperty(i, "__esModule", {value: !0});
var r = e("GetUserInfoCommand"),
    s = e("LoginProxy"),
    c = e("RankProxy"),
    l = (function (e) {
        function t(o) {
            return e.call(this, t.NAME, o) || this;
        }
        return (
            a(t, e),
            (t.prototype.listNotificationInterests = function () {
                return [
                    r.default.ON_GET_USER_INFO_SUCCESS,
                    s.default.ON_GET_OPENID_SUCCESS,
                    c.default.RANK_INIT_SUCCESS,
                    c.default.RANK_LIST_UPDATR,
                    t.CHANGE_SKIN
                ];
            }),
            (t.prototype.handleNotification = function (e) {
                switch (e.getName()) {
                    case r.default.ON_GET_USER_INFO_SUCCESS:
                        this.startModuleView.refreshUserInfo();
                        break;
                    case s.default.ON_GET_OPENID_SUCCESS:
                        this.startModuleView.rankProxyInit();
                        break;
                    case c.default.RANK_INIT_SUCCESS:
                        this.startModuleView.rankViewInit();
                        break;
                    case c.default.RANK_LIST_UPDATR:
                        this.startModuleView.rankViewRefresh();
                        break;
                    case t.CHANGE_SKIN:
                        this.startModuleView.renderSnakeInfo(!1);
                }
            }),
            Object.defineProperty(t.prototype, "startModuleView", {
                get: function () {
                    return this.viewComponent;
                },
                enumerable: !1,
                configurable: !0
            }),
            (t.NAME = "StartModuleViewMediator"),
            (t.CHANGE_SKIN = "CHANGE_SKIN"),
            t
        );
    })(puremvc.Mediator);
i.default = l;
